Various embodiments of this disclosure relate to page frame tables and, more particularly, to reserving a storage area and building page frame table entries.
A computer's operating system manages its virtual memory and main memory. Virtual memory pages are assigned to applications and backed by (i.e., stored in) main memory frames when used. However, portions of main memory are used to back a range of virtual memory that keeps track of the main memory. This range of virtual memory contains page frame table entries (PFTEs).
During system initialization, frames are needed to back PFTEs used to represent main memory, including the 1 MB and 2 GB storage frames in the large frame area (LFAREA), a portion of main memory. The needed frames are obtained from an area of main memory that is initialized to support other early initialization processes. When the LFAREA is specified to be large, this area for early frames becomes exhausted as the frames needed to back the PFTEs are taken. This causes system initialization to fail.
Some systems use a technique of backing the PFTEs in the same address increment that contains the storage the PFTEs represent. This technique, referred to herein as the zone technique, is performed by using the first (i.e., lowest address) 4 KB frame in the address increment to back the first page of PFTEs that represents the backing frame itself, and then working upward by adding more PFTEs to represent each of the succeeding 4 KB frames.